package 数组1;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class 数组作业3 {
    public static void main(String[] args) {
        /*3)给定一个整型int[] numbers = {7,4,2,2,5,8,7,8,10},请编程实现去除数组中重复元素！
        //用来记录去除重复之后的数组长度和给临时数组作为下标索引*/

        int[] numbers = {7,4,2,2,5,8,7,8,10};
        int b = 0;
        int[] tempArr = new int[numbers.length];
        for(int i = 0; i < numbers.length; i++){
            //声明一个标记，并每次重置
            boolean isTrue = true;
            for(int j=i+1;j<numbers.length;j++){
                //如果有重复元素，改变标记状态并结束当次内层循环
                if(numbers[i]==numbers[j]){
                    isTrue = false;
                    break;
                }
            }
            //判断标记是否被改变，如果没被改变就是没有重复元素
            if(isTrue){
                tempArr[b] = numbers[i];
                //到这里证明当前元素没有重复，那么记录自增
                b++;
            }
        }
        //声明需要返回的数组，这个才是去重后的数组
        int[]  newArr = new int[b];
        //用arraycopy方法将刚才去重的数组拷贝到新数组并返回
        System.arraycopy(tempArr,0,newArr,0,b);
        Arrays.sort(newArr);

        System.out.println(Arrays.toString(newArr));
    }
}

